package com.travel.utils;

import cn.hutool.core.date.DateField;
import cn.hutool.core.date.DateUtil;
import com.auth0.jwt.JWT;
import com.auth0.jwt.algorithms.Algorithm;

import java.util.Date;

/**
 * @author Niu
 */
public class TokenTools {

  /**
   *
   * @return 生成JWT类型加密字符串: HMAC384加密方式
   */
  public static String createToken(String userName,String userPass){

    String jwt = JWT.create()
      //用户信息
      .withAudience(userName, userPass)
      //使用hutool设置加密字符失效的时间
      .withExpiresAt(DateUtil.offset(new Date(), DateField.MINUTE, 5))
      //加密方式
      .sign(Algorithm.HMAC384(userPass));
    return jwt;
  }

  public static String getName(String jwt){
      return JWT.decode(jwt).getAudience().get(0);
  }


}
